草庐IT

c++ - AMQP C++ 实现

全部标签

c - 将 printf 重定向到 IAR Embedded Workbench 上的控制台 I/O

我在Windows机器上的软件IAREmbeddedWorkbenchIDE中用C编写了我的一个项目。该项目编译并运行良好。我的代码中有几个printf函数。但问题是该项目适用于微ControllerAT91SAM7X256。我已成功构建我的应用程序以在微Controller的sram上运行,并且应用程序已成功加载。但是printf函数被定向到Controller的USART端口(我只能假设),所以我想重定向printf以在我的上显示文本终端输入/输出。有谁知道我该怎么做? 最佳答案 我使用IAR工具链的ARM、AVR32和MSP4

c++ - 关于Windows API和C/C++运行时库函数的问题

当我为Windows平台编写C/C++代码时,我通常会根据需要使用WindowsAPI。但是当涉及到多线程时,我从WindowsviaC/C++>中阅读了以下引述TheCreateThreadfunctionistheWindowsfunctionthatcreatesathread.However,ifyouarewritingC/C++code,youshouldnevercallCreateThread.Instead,youshouldusetheMicrosoftC++run-timelibraryfunction_beginthreadex.IfyoudonotuseMic

.net - CLR 如何实现 COM 实现的二进制级别的互操作性?或者不?

COM是一个对象在内存中以二进制级别表示的标准。考虑到这一点,在任何语言中使用COM对象都很容易。您只需要以COM要求的方式解释内存,您就可以控制COM对象。我认为CLR是用相同的互操作性思想创建的,但是有一个抽象层,比如自己的语言(不是二进制)。考虑到这一点,CLR如何实现像COM那样的二进制级别的互操作性?还是没有达到?COM和CLR是互补的东西吗?或者是相互替代的东西,因为MS似乎一直在做。使用COM,您不依赖于虚拟机。使用CLR,您是否依赖于虚拟机? 最佳答案 有天壤之别。COM通过简单实现了互操作性。规则非常少,只有标准化

c++ - 强制窗口位于最顶层的窗口之上(如任务管理器)

这个问题在这里已经有了答案:Howtokeepmytopmostwindowontop?[duplicate](1个回答)关闭9年前。我有一个窗口,我想将其显示在所有其他内容之上。我的代码能够成功地强制它位于几乎每个窗口之上,除了其他最顶层的窗口。这是我使用的代码:SetWindowPos(getSDLWindow(),HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE|SWP_NOACTIVATE);每次单击鼠标中键时都会执行此行(我使用鼠标钩来触发它)。一旦我启动我的程序并单击一次中键,从那时起,我的窗口就会保持在所有“常规”窗口之上。但是,所有“

c - 如何在 ring0(内核模式)中使用 winapi 函数?

我无法在驱动程序中调用FileTimeToSystemTime()方法。错误是:错误C4013:“FileTimeToSystemTime”未定义;假设extern返回int。我也不能包含windows.h,因为我已经包含了ntddk.h,它会导致很多错误。如果我在header中将其声明为BOOLFileTimeToSystemTime(INconstPFILETIME,OUTPSYSTEMTIME);我会收到下一个错误:错误C2061:语法错误:标识符“FileTimeToSystemTime”错误C2059:语法错误:';'错误C2059:语法错误:“类型”错误C4013:“Fil

.net - 线程是否可以在临界区中间被抢占?

是否可以通过在Windows中禁用中断来实现临界区锁定?如果是这种情况,则当线程处于临界区中间时,它不能被抢占。但如果是这种情况,即如果一个线程在执行关键部分时不能被抢占,那将使得脉冲监视器的整个点不如如果即使线程处于关键部分的中间,也可能会要求线程撤出CPU。所以,我真正的问题是:在Windows中如何实现监视器?线程处于临界区中间时是否可以被抢占? 最佳答案 Windows的设计使得线程,即使在内核模式下运行,arealwayspreemptibleandalwaysinterruptible.所以临界区肯定不是通过禁止中断来实

windows - 为 XNA 游戏实现基于 XML 的简单脚本语言

我正在与一个团队合作使用C#和XNA开发RPG引擎。我们计划以Windows和WindowsPhone7为目标,但在过场动画期间遇到了AI交互和控制玩家Action的问题。大多数情况下,一切都是使用MVC设计模式提取的,但是将所有逻辑和移动抽象到Controller中可能会导致问题。因此,我们的想法是拥有一个接口(interface)(IScriptEngine),该接口(interface)采用IScriptObject并相应地更新map模型中的数据。我正在考虑将脚本放入XML类型的语法中:并让IScriptEngine相应地解析它。我非常怀疑在一个巨大的switch语句中进行解析是

C sha1 实现不适用于 Unix

我正在使用thisimplementationC中的SHA1。在Windows上工作正常,但它在Unix上不输出正确的哈希值(在Ubuntu和MacOS10.8上试过)。此外,在Ubuntu上,它从同一消息输出不同的哈希值。我想我可以使用另一个实现,只是好奇为什么会这样。编辑谢谢,你们是对的。改成了typedefunsignedintUINT4;似乎工作正常。 最佳答案 这些是64位unix吗?/*UINT4definesafourbyteword*/typedefunsignedlongintUINT4;在64位Linux上实际上

c - 从 C 控制台应用程序打印到屏幕覆盖当前行

我想覆盖C控制台程序中的当前行,以实现类似于linuxshell命令“top”的输出。如果可能,该方法应该在windows和linux下工作。while(i我想在每次迭代中覆盖之前的数字,如果可能的话,看看用户是否在不暂停循环的情况下输入了一个字符。如果用户按下“q”键,循环应立即停止。 最佳答案 如果您只需要这样做,则不需要ncurses。您需要做的就是将光标移动到行首并覆盖那里的内容,并确保刷新输出缓冲区,因为stdout如果它连接到终端,通常是行缓冲的。这是一个例子:#include#includeintmain(intarg

c++ - 如何检测隐藏进程

想知道“ProcessExplorer”或“ComboFix”等应用程序如何检测隐藏进程???我假设这必须用C或C++完成。即使在.NET中也很容易访问进程列表,但这并不总是准确的,我知道根工具包可以从任务管理器中隐藏自己。是通过内存访问和IO吗?好奇是否有人知道这是如何实现的。 最佳答案 这个问题无法回答。这取决于该过程最初是如何隐藏的。例如,有人可以通过向HookEnumProcesses、Process32Next等的所有进程以及与进程枚举相关的所有其他API注入(inject)用户模式​​DLL来隐藏进程。这将被跳过钩子(H